#ifndef _COMUTILIY_BASE_H_
#define _COMUTILIY_BASE_H_

#include <dlcom/cominc.h>

uvStdComNameSpaceBegin

typedef _lComPtr<IBase> BasePtr;
typedef const _lComPtr<IBase>& BaseConstPtr;

typedef _lComPtr<IComRunningObjectTable> RotPtr;
typedef const _lComPtr<IComRunningObjectTable>& RotConstPtr;

typedef _lComPtr<IComRotMessage> ComRotMessagePtr;
typedef const _lComPtr<IComRotMessage>&  ComRotMessageConstPtr;

typedef _lComPtr<ILibManager> LibManagerPtr;
typedef const _lComPtr<ILibManager> LibManagerConstPtr;

typedef _lComPtr<ICompoentLoader> CompoentLoaderPtr;
typedef const _lComPtr<ICompoentLoader> CompoentLoaderConstPtr;

typedef _lComPtr<IObjectRun> ObjectRunPtr;
typedef const _lComPtr<IObjectRun>& ObjectRunConstPtr;

typedef _lComPtr<IPlugin> PluginPtr;
typedef const _lComPtr<IPlugin> PluginConstPtr;

typedef _lComPtr<IPluginRun> PluginRunPtr;
typedef const _lComPtr<IPluginRun> PluginRunConstPtr;

typedef _lComPtr<IMsgPlugin> MsgPluginPtr;
typedef const _lComPtr<IMsgPlugin> MsgPluginConstPtr;

typedef _lComPtr<IMsg> MsgPtr;
typedef const _lComPtr<IMsg> MsgConstPtr;

typedef _lComPtr<IMsgProxy> MsgProxyPtr;
typedef const _lComPtr<IMsgProxy> MsgProxyConstPtr;

typedef _lComPtr<IComClassFactory> ComClassFactoryPtr;
typedef const _lComPtr<IComClassFactory> ComClassFactoryConstPtr;

typedef _lComPtr<IComObjectFrameworkClassFactory> ComFactoryPtr;
typedef const _lComPtr<IComObjectFrameworkClassFactory> ComFactoryConstPtr;

typedef _lComPtr<IExit> ExitPtr;
typedef const _lComPtr<IExit> ExitConstPtr;

uvStdComNameSpaceEnd

#endif

